/**
 * Created by fq on 2018/1/15 0015.
 */
'use strict';
angular.module('indexApp')
    .controller('personalCtrl', function ($scope, $state, $rootScope, $http) {
        var vm = this;
        vm.http = $rootScope.http;
        $scope.state = $state;
        // 获取用户信息
        if ($rootScope.id) {
            $http({
                method: 'post',
                url: sessionStorage.http + 'get_userinfo',
                data: {
                    user_id: $rootScope.id
                }
            })
                .then(function successCallback(res) {
                    console.log(res.data);
                    if (res.data.code == 0) {
                        if (res.data.data.user.is_com == 0) {
                            // window.location.href = $rootScope.http_main + '/#/registered';
                            $state.go('registered', {}, {reload: true});
                            // $rootScope.alert('is_com');
                        }
                    }
                }, function errorCallback(res) {// 请求失败执行代码
                    // $rootScope.alertError()
                });
        }

        $http({
            method: 'post',
            url: vm.http + 'my_index',
            data: {
                user_id: $rootScope.id
            }
        })
            .then(function successCallback(res) {

                if (res.data.code == 0) {
                    console.log(res.data);
                    vm.data = res.data.data.users
                }
                else {
                    $rootScope.alert(res.data.msg)
                }

            }, function errorCallback(res) {// 请求失败执行代码
                $rootScope.alertError()
            });
        // 微信SDK config配置
        console.log(location.href.split('#')[0]);
        $http({
            method: 'post',
            url: vm.http + 'wechat_sdksign',
            data: {
                url: location.href.split('#')[0],
            }
        })
            .then(function successCallback(res) {

                if (res.data.code == 0) {
                    console.log(res.data);
                    vm.config = res.data.data.config;
                    wx.config({
                        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
                        appId: vm.config.appid, // 必填，公众号的唯一标识
                        timestamp: vm.config.timestamp, // 必填，生成签名的时间戳
                        nonceStr: vm.config.nonceStr, // 必填，生成签名的随机串
                        signature: vm.config.signature,// 必填，签名
                        jsApiList: ['scanQRCode', 'onMenuShareAppMessage', 'onMenuShareTimeline'] // 必填，需要使用的JS接口列表
                    });
                }
                else {
                    $rootScope.alert(res.data.msg)
                }

            }, function errorCallback(res) {// 请求失败执行代码
                $rootScope.alertError()
            });

        vm.scan = function () {

            wx.scanQRCode({
                needResult: 1, // 默认为0，扫描结果由微信处理，1则直接返回扫描结果，
                scanType: ["qrCode", "barCode"], // 可以指定扫二维码还是一维码，默认二者都有
                success: function (res) {
                    var result = res.resultStr; // 当needResult 为 1 时，扫码返回的结果
                    vm.res1 = JSON.parse(res.resultStr);

                    $http({
                        method: 'post',
                        url: vm.http + 'sign_code',
                        data: {
                            user_id: $rootScope.id,
                            date: vm.res1.date,
                            token: vm.res1.token
                        }
                    })
                        .then(function successCallback(res) {
                            if (res.data.code == 0) {
                                console.log(res.data);
                                vm.alert = !vm.alert;
                                vm.data.points = vm.data.points + 2;
                            }
                            else {
                                $rootScope.alert(res.data.msg)
                            }

                        }, function errorCallback(res) {// 请求失败执行代码
                            $rootScope.alertError()
                        });
                }
            });
        };
        wx.ready(function () {
            // wx.updateAppMessageShareData({
            //     title: '456', // 分享标题
            //     desc: '123', // 分享描述
            //     link: 'http://fangdichan.whtxcloud.com', // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            //     imgUrl: 'http://193.112.111.73/qrcode/14.png', // 分享图标
            // }, function (res) {
            //     //这里是回调函数
            // });
            console.log($rootScope.id);
            wx.onMenuShareAppMessage({
                title: '公园豪庭燃烧卡路里活动报名', // 分享标题
                desc: '公园豪庭燃烧卡路里活动报名', // 分享描述
                link: $rootScope.http_main + "?invite_id=" + $rootScope.id, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                imgUrl: localStorage.getItem('avatar'), // 分享图标
                type: '', // 分享类型,music、video或link，不填默认为link
                dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
                success: function () {
                    // 用户确认分享后执行的回调函数
                },
                cancel: function () {
                    // 用户取消分享后执行的回调函数
                }
            });
            wx.onMenuShareTimeline({
                title: '公园豪庭燃烧卡路里活动报名', // 分享标题
                link: $rootScope.http_main + "?invite_id=" + $rootScope.id, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                imgUrl: localStorage.getItem('avatar'), // 分享图标
                success: function () {
                    // 用户点击了分享后执行的回调函数
                },
            });
        });
        vm.invite = function () {
            $rootScope.alert('请点击页面右上角的三个点，发送给朋友')
            // config信息验证后会执行ready方法，所有接口调用都必须在config接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在ready函数中。
        }
    });